以下是這個系列的大綱:
當然在之前的比賽已經有相當多厲害的大神們已經介紹過Elasticsearch有很多深入的介紹,並且在官方文檔中也有許多詳細的介紹。但是如果你是第一次聽到Elasticseach,或是剛開始學習的人,希望經過這30天的學習能夠獨立自己架設並且根據自身需求來進行使用
Elasticsearch是一個基於Apache Lucene庫的分散式搜尋和分析引擎,除了是具備開源的優勢之外(部分功能需付費),在處理和搜索大量結構化和非結構化數據時的表現非常出色。
以下為Elasticsearch的一些特點:
// Proximity searches
搜尋: Spicy Sauce
結果: 除了Spicy Sauce之外,Spicy Tomato Sauce也可以被找到
// Fuzzy match query
搜尋: 想找Eason但是打成Eas0n
結果: 可以找到Eason
日誌與數據分析:ES也常被用來收集以及儲存大量的日誌數據,並且可以支援數據的實時分析,可以幫助使用者去檢測服務問題、查看性能等等
圖源:https://learn.microsoft.com/zh-tw/dotnet/architecture/cloud-native/logging-with-elastic-stack
地理系統:ES可以處理地理空間的數據,所以也可以呈現不同地區的請求數以及用戶分佈等等
圖源:https://www.elastic.co/cn/maps
推薦系統:因為ES具備相似度分數的計算功能,簡而言之就是會計算出每項結果與查詢語句之間的相似度分數,因此也可以建立成推薦系統的選擇之一
Elasticsearch具備的功能都不是獨有,或是說有相當新穎的技術。但是可能比較難找到同時具備全文索引、處理同義詞、計算相關性分數計算的功能,又能從這些資料生成分析與聚合數據,而同時具備相當快速的速度處理上述任務的這樣的一個服務~